Migrating a Scientific Application from MPI to Coarrays
نویسنده
چکیده
MPI is a de facto standard for portable parallel programming using a message passing paradigm. Interest is growing in other paradigms, in particular Partitioned Global Address Space (PGAS) languages such as Coarray Fortran, UPC and Titanium. Most Computational Science and Engineering codes are written in Fortran, and the 2008 Fortran standard will include coarrays, a Cray initiated PGAS extension of the language. We report on the experience of taking a moderately large CFD program and migrating it to a Cray X1E using coarrays rather than MPI. The MPI and coarray versions are compared, both for ease of programming and legibility, and for performance. We find that coarrays are a useful and expressive addition to Fortran, and that their use does not impact on performance. We discuss various ways in which the use of coarrays can be optimized in a program.
منابع مشابه
Evaluating Coarray Fortran with the CGPOP Miniapp
The Parallel Ocean Program (POP) is a 71,000 line-of-code program written in Fortran and MPI. POP is a component of the Community Earth System Model (CESM), which is a heavily used global climate model. Now that Coarrays are part of the Fortran standard one question raised by POP’s developers is whether Coarrays could be used to improve POP’s performance or reduce its code volume. Although Coar...
متن کاملParallel computing using MPI and OpenMP on self-configured platform, UMZHPC.
Parallel computing is a topic of interest for a broad scientific community since it facilitates many time-consuming algorithms in different application domains.In this paper, we introduce a novel platform for parallel computing by using MPI and OpenMP programming languages based on set of networked PCs. UMZHPC is a free Linux-based parallel computing infrastructure that has been developed to cr...
متن کاملCompiler and Runtime Approach for Supporting Efficient Execution of Coarray Fortran Programs
Fortran remains a very widely used programming language for technical computing. Fortran coarrays are new elements in the Fortran standard which aim to support the development of parallel programs without requiring the use of external constructs such as libraries (e.g. MPI) or directives (e.g. OpenMP). Coarrays provide a Partitioned Global Address Space (PGAS) approach to parallel programming i...
متن کاملPerformance of Fortran Coarrays on the Cray XE6
Coarrays are a feature of the Fortran 2008 standard that enable parallelism using a small number of additional language elements. The execution model is that of a Partitioned Global Address Space (PGAS) language. The Cray XE architecture is particularly interesting for studying PGAS languages: it scales to very large numbers of processors; the underlying GEMINI interconnect is ideally suited to...
متن کاملApplication of Malmquist Index in Two-Stage DEA for Measurement of Productivity Growth
The purpose of this paper is to develop an output oriented methodology for calculating productivity growth by using Malmquist productivity index (MPI) and two different data envelopment analysis (DEA) views (optimistic and pessimistic) simultaneously, and apply it to five Iranian Commercial Banks over the four time period (2009-2013). Consequently, we have proposed a new approach called the dou...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008